package com.bsoft.gol.hcs.satisfyStatic.service;

import ctd.controller.exception.ControllerException;
import ctd.util.annotation.RpcService;
import org.atag.dao.model.SimplePageInfo;
import com.bsoft.gol.hcs.satisfyStatic.bean.qo.*;
import com.bsoft.gol.hcs.satisfyStatic.bean.vo.*;

import java.util.List;

/**
 * Created by ChenJij on 2022/7/26.
 */
public interface ISatisfySurveyStatisticService {

    /**
     * @description: 查询报表配置列表
     * @author: chenJij@bsoft.com.cn
     * @date: 2022/7/26 10:41
     */
    List<QuerySatisfyStatisticSettingListVo> querySatisfyStatisticSettingList(QuerySatisfyStatisticSettingListQo qo) throws ControllerException;

    /**
     * @description: 查询报表配置详情
     * @author: chenJij@bsoft.com.cn
     * @date: 2022/7/26 10:43
     */
    GetSatisfyStatisticSettingDetailVo getSatisfyStatisticSettingDetail(GetSatisfyStatisticSettingDetailQo qo) throws ControllerException;

    /**
     * @description: 删除查询报表配置
     * @author: chenJij@bsoft.com.cn
     * @date: 2022/7/26 10:43
     */
    void deleteSatisfyStatisticSetting(GetSatisfyStatisticSettingDetailQo qo) throws ControllerException;

    /**
     * @description: 新增、修改报表配置
     * @author: chenJij@bsoft.com.cn
     * @date: 2022/7/26 10:45
     */
    SaveSatisfyStatisticSettingVo saveSatisfyStatisticSetting(SaveSatisfyStatisticSettingQo qo) throws ControllerException;

    /**
     * @description: 查询报表维度列表
     * @author: chenJij@bsoft.com.cn
     * @date: 2022/7/26 10:45
     */
    List<QueryStatisticExtraIdListVo> queryStatisticExtraIdList(QueryStatisticExtraIdListQo qo) throws ControllerException;

    @RpcService
    QuerySatisfySurveyStatisticListVo querySatisfySurveyStatisticTitleList(QuerySatisfySurveyStatisticListQo qo) throws ControllerException;

    /**
     * @description: 查询满意度问卷统计列表
     * @author: chenJij@bsoft.com.cn
     * @date: 2022/7/26 10:45
     */
    SimplePageInfo<QuerySatisfySurveyStatisticListVo> querySatisfySurveyStatisticList(QuerySatisfySurveyStatisticListQo qo) throws ControllerException;
}